.userPage {
    @include page-setup($project-bg);
    flex-direction: row;
    align-items: flex-start;

    @media screen and (max-width: 768px) {
        flex-direction: column;
    }

    &-profile {
        display: flex;
        flex-direction: column;
        width: 296px;
        min-width: 296px;

        @media screen and (max-width: 1012px) {
            width: 256px;
            min-width: 256px;
        }
        @media screen and (max-width: 768px) {
            width: 100%;
        }
    }

    &-user {
        display: flex;
        flex-direction: column;
        gap: $space-m;
        margin-bottom: 16px;

        @media screen and (max-width: 768px) {
            width: 100%;
            flex-direction: row;
            align-items: center;
        }

        &-image {
            width: 100%;
            border-radius: 50%;
            display: inline-block;
            flex-shrink: 0;
            line-height: 1;
            overflow: hidden;
            vertical-align: middle;

            @media screen and (max-width: 768px) {
                width: 16%;
            }
        }

        &-bio {
            display: flex;
            flex-direction: column;

            &-name {
                @include p-24;

                @media screen and (max-width: 544px) {
                    @include p-20;
                }
            }

            &-login {
                @media screen and (max-width: 544px) {
                    @include p-16;
                }
            }
        }
    }

    &-people {
        display: flex;
        gap: 4px;
        padding-bottom: 24px;
        border-bottom: 1px solid $border-color;

        @media screen and (max-width: 544px) {
            @include p-14;
        }
        &-link {
            display: flex;
            align-items: center;
            gap: 3px;
            text-decoration: none;
            color: inherit;

            &:hover {
                cursor: pointer;
                p,
                svg {
                    color: $text-link !important;
                }
            }
        }
    }

    &-info {
        display: flex;
        flex-direction: column;
        width: 100%;
        overflow-x: hidden;

        @media screen and (max-width: 768px) {
            overflow-x: visible;
        }
        &-title {
            margin-bottom: 20px;
        }
    }
    &-popularRepos {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: $space-m;
        margin-bottom: 32px;

        @media screen and (max-width: 768px) {
            grid-template-columns: 1fr;
        }
    }
    &-contribCalendar {
        display: flex;
        justify-content: flex-start;
        width: 100%;
        gap: $space-m;

        &-title {
            margin-bottom: 8px;
        }
    }

    &-calendar {
        max-width: calc(100% - $space-m - 60px);
        padding: $space-xxs;
        border-radius: $border-radius;
        border: 1px solid $border-color;

        &-years {
            display: flex;
            flex-direction: column;
        }

        &-year {
            border-radius: $border-radius;
            background-color: $button-primary-bg;
            padding: $space-xxs $space-m;
            margin-bottom: $space-xxs;
            font-size: 12px;
            color: white;
            cursor: pointer;

            &:hover {
                box-shadow: 0px 4px 10px 0px rgba(0, 0, 0, 0.25);
            }
        }
    }
}
